package br.com.rhinovet.logica.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import br.com.rhinovet.dao.generico.DaoGenerico;
import br.com.rhinovet.entidade.Especie;
import br.com.rhinovet.logica.contract.PopularCadastrosLogicaContract;

@Service("popularEntidadeLogica")
public class PopularCadastrosLogica extends DaoGenerico<Especie> implements PopularCadastrosLogicaContract {
	
	private static final long serialVersionUID = 1L;
	
	@Autowired
	private PopularEspecieLogica logicaEspecie;
	
	@Autowired
	private PopularRacaLogica logicaRaca; 
	
	@Autowired
	private PopularSubExameLogica logicaSubCategoriaExame;
	
	@Autowired
	private PopularProcCirurgiaLogica logicaSubCirurgia;
	
	@Autowired
	private PopularProcConsultaLogica logicaSubConsulta;
	
	@Autowired
	private PopularProcVacinaLogica logicaSubVacina;
	
	@Override
	public void verificarTabelaVazia() throws Exception {
		boolean tabelaVazia = verificarTabelaVazia(Especie.class);
		
		if (tabelaVazia) {
			logicaEspecie.popularEspecie();;
			logicaRaca.popularRaca();
			logicaSubCategoriaExame.popularSubCategoriaExame();
			logicaSubCirurgia.popularSubCategoriaCirurgia();
			logicaSubConsulta.popularSubCategoriaConsulta();
			logicaSubVacina.popularSubCategoriaVacina();
			
		}
	}
}